// # 登录对话框 - 显示
// 1 获取登录按钮 
// 2 绑定点击事件
// 2.1 事件处理函数中 - 获取登录弹框
// 2.2 事件处理函数中 - 直接显示
var loginBtn = document.querySelector('header .member >div')
loginBtn.onclick = function () {
    var loginTk = document.querySelector('section.login')
    var loginDialog = document.querySelector('section.login')
    loginDialog.style.visibility = 'visible'
    loginTk.style.position = 'absolute'
    loginTk.style.zIndex = 5

}


// # 登录对话框 - 隐藏
// 1 获取登录对话框关闭按钮 
// 2 绑定点击事件
// 2.1 事件处理函数中 -C 获取登录弹框
// 2.2 事件处理函数中 - 直接隐藏
var loginCloseBtn = document.querySelector('section.login i.icon-close')
loginCloseBtn.onclick = function () {
    var loginDialog = document.querySelector('section.login')
    loginDialog.style.visibility = 'hidden'
}



// # 登录对话框 - 蓝色区域拖拽
// 1 获取蓝色区域
// 2 绑定鼠标按下事件
// 2.1事件处理函数中 - 给网页绑定鼠标移动事件
// 2.1.1 获取事件对象
// 2.1.2 获取鼠标位置
// 2.1.3 限制边界
// 2.1.4 设置行内样式
// 2.2 事件处理函数中 - 给网页绑定鼠标松开事件 ->  目的：让网页移动事件
var loginBlueBox = document.querySelector('section.login .menu')
loginBlueBox.onmousedown = function (evt) {
    var oldE = evt || window.event
    document.onmousemove = function (evt) {
        var e = evt || window.event
        var left = e.clientX - oldE.offsetX
        var top = e.clientY - oldE.offsetY


        if (left < 0) left = 0
        if (top < 0) top = 0
        var loginDialog = document.querySelector('section.login .item')
        var maxLeft = (window.innerWidth || document.documentElement.clientWidth) - loginDialog.offsetWidth
        var maxTop = (window.innerHeight || document.documentElement.clientHeight) - loginDialog.offsetHeight
        if (left < 0) left = 0
        if (top < 0) top = 0
        loginDialog.style.position = 'absolute'
        loginDialog.style.left = left + 'px'
        loginDialog.style.top = top + 'px'

    }
    document.onmouseup = function () {
        document.onmousemove = null
    }
}

// # 登录倒计时 （留心：重点点击BUG  disabled属性
// 1 获取验证码按钮
// 2 绑定点击事件
// 一、获取行为验证码对话框
// 二、显示
// 三、获取关闭按钮绑定点击事件
// 四、获取【球球】绑定【鼠标按下事件】
// 4.1 事件处理函数中 - 给【网页】绑定【鼠标移动】事件 -> 球球、卡片同步位置
// 4.1.1 获取事件对象
// 4.1.2 获取鼠标位置
// 4.1.3 限制边界
// 4.1.4 同步 
// 4.2 事件处理函数中 - 给【网页】绑定【鼠标松开】事件 -> 取消网页移动事件、判断行为验证码结果
// 取消网页移动事件、
// 判断行为验证码结果
// 1 获取数字
// 2 判断 260 ~ 265 之间就倒计时 否则不管  -> 切记别忘了 成功记得隐藏
// 2.1 事件处理函数中 - 将验证码按钮的文字改成【5秒后重发】
// 2.2 事件处理函数中 - a:定义全局变量,b:上一步使用全局变量,c:允许按钮点击,d:定时器继续重置&判断
// 2.3 定时器中
// 判断：a:清除定时器,b:页面重置,c:全局num终止,d:终止代码执行
// 继续重置
// 3 不管成功失败都重置
var num = 5
var loginCaptchaBtn = document.querySelector('section.login .captcha')
loginCaptchaBtn.onclick = function () {
    var captchaObj = document.querySelector('section.captcha')
    captchaObj.style.visibility = 'visible'
    captchaObj.style.zIndex = 6
    document.querySelector('section.captcha i.icon-close').onclick = function () {
        captchaObj.style.visibility = 'hidden'
    }
    var dragBtn = captchaObj.querySelector('.drag .btn')
    dragBtn.onmousedown = function () {
        document.onmousemove = function (evt) {
            var e = evt || window.event
            var left = e.clientX - (captchaObj.offsetLeft - captchaObj.offsetWidth / 2) - dragBtn.offsetWidth
            dragBtn.style.left = left + 'px'
            captchaObj.querySelector('.check img:nth-of-type(2)').style.left = left + 'px'
        }
        document.onmouseup = function () {
            document.onmousemove = null
            var value = parseInt(dragBtn.style.left)
            if (value >= 260 && value <= 265) 
            {
                captchaObj.style.visibility = 'hidden'
                loginCaptchaBtn.innerText = num + '秒后重发'
                loginCaptchaBtn.disabled = true
                t = setInterval(function () {
                    if (num <= 1) {
                        clearInterval(t)
                        loginCaptchaBtn.innerText = '重新发送'
                        num = 5
                        loginCaptchaBtn.disabled = false
                        return
                    }
                    num--
                    loginCaptchaBtn.innerText = num + '秒后重发'
                }, 1000)
            }
            // 3 不管成功失败都重置
            dragBtn.style.left = '0px'
            captchaObj.querySelector('.check img:nth-of-type(2)').style.left = '0px'
        }
    }
    return
}


// # 登录表单验证
// 1 获取【登录/注册】按钮
// 2 绑定点击事件
// 2.1 事件处理函数中 - 获取手机号判断
// 2.2 事件处理函数中 - 获取验证码判断4位必须全部是数字
// 2.3 都验证成功 - 弹框表单提交中...
var loginSubmitBtn = document.querySelector('section.login .submit')
loginSubmitBtn.onclick = function () {
    var isOk = 0
    var mobileObj = document.querySelector('.mobile')
    if (mobileObj.value == '' || mobileObj.value.length != 11 || !Number(mobileObj.value)) {
        document.querySelector('section.login .form > p:nth-of-type(3)').innerText = '手机格式有误'
    } else {
        isOk++
        document.querySelector('section.login .form > p:nth-of-type(3)').innerText = ''
    }

    var passwordObj = document.querySelector('.password')
    if (passwordObj.value == '' || passwordObj.value.length != 4 || !Number(passwordObj.value)) {
        document.querySelector('section.login .form > p:nth-of-type(4)').innerText = '验证码只能是4位数字'
    } else {
        isOk++
        document.querySelector('section.login .form > p:nth-of-type(4)').innerText = ''
    }
    if (isOk == 2) {
        alert('登录成功')
    }
}
